﻿namespace Vinno.Brand.Pack.EntityConfiguration
{
    /// <summary>
    /// 文件内容实体映射配置
    /// </summary>
    public class SpaceInfoConfiguration : EntityTypeConfigurationBase<SpaceInfo, Guid>
    {
        /// <summary>
        /// 获取 所属的数据上下文类型
        /// </summary>
        public override Type DbContextType => typeof(BrandDbContext);

        /// <summary>
        /// 重写以实现实体类型各个属性的数据库配置
        /// </summary>
        /// <param name="builder">实体类型创建器</param>
        public override void Configuration(EntityTypeBuilder<SpaceInfo> builder)
        {
            builder.HasIndex(m => m.Type).SetIndex("Type", false);
            builder.HasOne(m => m.ThumbImg).WithOne().HasForeignKey<SpaceInfo>(m => m.ThumbImgId).SetForeignKey("ThumbImgId", true);
        }
    }
}
